package com.example.demo.model;

import java.io.Serializable;
import java.math.BigInteger;

/**
 * 版权信息模型类
 */
public class CopyrightInfo implements Serializable {
    
    private static final long serialVersionUID = 1L;
    
    // 数据库ID
    private Long id;
    
    // 区块链ID（字符串形式）
    private String blockchainId;
    
    // 图片哈希
    private String imageHash;
    
    // 所有者地址
    private String ownerAddress;
    
    // 创建时间（区块链时间戳）
    private BigInteger createTime;
    
    // 是否有效
    private Boolean isValid;
    
    // 交易哈希
    private String txHash;
    
    // 区块链上链时间
    private Long blockchainTime;
    
    // 图片路径
    private String imagePath;
    
    // 图片名称
    private String imageName;
    
    // 图片大小
    private Long imageSize;
    
    // 模型名称
    private String modelName;
    
    // 提示词
    private String prompt;
    
    // 构造函数
    public CopyrightInfo() {
    }
    
    // Getters 和 Setters
    public Long getId() {
        return id;
    }
    
    public void setId(Long id) {
        this.id = id;
    }
    
    public String getBlockchainId() {
        return blockchainId;
    }
    
    public void setBlockchainId(String blockchainId) {
        this.blockchainId = blockchainId;
    }
    
    public String getImageHash() {
        return imageHash;
    }
    
    public void setImageHash(String imageHash) {
        this.imageHash = imageHash;
    }
    
    public String getOwnerAddress() {
        return ownerAddress;
    }
    
    public void setOwnerAddress(String ownerAddress) {
        this.ownerAddress = ownerAddress;
    }
    
    public BigInteger getCreateTime() {
        return createTime;
    }
    
    public void setCreateTime(BigInteger createTime) {
        this.createTime = createTime;
    }
    
    public Boolean getIsValid() {
        return isValid;
    }
    
    public void setIsValid(Boolean isValid) {
        this.isValid = isValid;
    }
    
    public String getTxHash() {
        return txHash;
    }
    
    public void setTxHash(String txHash) {
        this.txHash = txHash;
    }
    
    public Long getBlockchainTime() {
        return blockchainTime;
    }
    
    public void setBlockchainTime(Long blockchainTime) {
        this.blockchainTime = blockchainTime;
    }
    
    public String getImagePath() {
        return imagePath;
    }
    
    public void setImagePath(String imagePath) {
        this.imagePath = imagePath;
    }
    
    public String getImageName() {
        return imageName;
    }
    
    public void setImageName(String imageName) {
        this.imageName = imageName;
    }
    
    public Long getImageSize() {
        return imageSize;
    }
    
    public void setImageSize(Long imageSize) {
        this.imageSize = imageSize;
    }
    
    public String getModelName() {
        return modelName;
    }
    
    public void setModelName(String modelName) {
        this.modelName = modelName;
    }
    
    public String getPrompt() {
        return prompt;
    }
    
    public void setPrompt(String prompt) {
        this.prompt = prompt;
    }
} 